/*
 * EnumTypeCodeSyntax.java	 
 *
 * Copyright 2012 Universidad Francisco de Paula Santander (UFPS).
 * Todos los Derechos Reservados.
 * Creado el 07/04/12, 11:23:38 AM
 */
package com.ufps.cuatro.util.generadores.codeobject;

/**
 * <i><b>EnumTypeCodeSyntax:</b></i><p>Esta Enumeración Identifica los Tipos de
 * Procesos que se desarrollan en la Generación del Código fuente que describe
 * las Representaciones realizadas con el Modelo Analizado en una Biblioteca de
 * Trabajo.</p>
 * 
 * @author Carlos A. Torres C. - Dolly E. Guerrero. <https://code.google.com/p/tesis4dor/>
 * @version 1.0 07/04/12
 */
public enum EnumTypeCodeSyntax {
    
    
    /**
     * Define el Proceso de Generación del Código Fuente de la Importación de un
     * Control que describe una Representación. Por lo general esta orden se
     * utiliza cuando el Control esta incluido en un Contenedor de alto nivel
     * como un JPanel, JDialog ó JFrame.
     */
    eImport,
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Simple 
     * de un Control que describe una Representación. Por lo general esta orden se
     * utiliza cuando el Control esta incluido en un Contenedor de alto nivel
     * como un JPanel, JDialog ó JFrame.
     */
    eDefinitionSimple,
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Canonical
     * de un Control que describe una Representación. Por lo general esta orden se
     * utiliza cuando el Control esta incluido en un Contenedor de alto nivel
     * como un JPanel, JDialog ó JFrame.
     */
    eDefinitionCanonical,
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización Simple
     * de un Control que describe una Representación. Esta inicialización se
     * basa en el Patron JavaBeans lo cual supone la existencia de un Constrcutor
     * Sin argumentos. Por lo general esta orden se utiliza cuando el Control 
     * esta incluido en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    eInitializationSimple,
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización Canonical
     * de un Control que describe una Representación. Esta inicialización se
     * basa en el Patron JavaBeans lo cual supone la existencia de un Constrcutor
     * Sin argumentos. Por lo general esta orden se utiliza cuando el Control 
     * esta incluido en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    eInitializationCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Importación
     * de los Controles ó Contenedores incluidos en la Representación de un Componente.
     */
    eImportFields, 
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición
     * Simple del Control ó Contenedor Representado por el Componente.
     */
    eFieldsDefinitionSimple, 
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición
     * Canonical del Control ó Contenedor Representado por el Componente.
     */
    eFieldsDefinitionCanonical,
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización
     * Canonical del Control ó Contenedor Representado por el Componente.
     */
    eFieldsInitializationCanonical,
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización
     * Simple del Control ó Contenedor Representado por el Componente.
     */
    eFieldsInitializationSimple,
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización
     * de las Propiedades asignadas al Control ó Contenedor Representado por el Componente.
     */
    eFieldsInitializationPropertiesSimple,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización
     * de las Propiedades asignadas al Control ó Contenedor Representado por el Componente.
     */
    eFieldsInitializationPropertiesCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización
     * del GridBagConstraints asignado al Control ó Contenedor Representado por el Componente.
     */
    eFieldsInitializationGridBagConstraintsSimple,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización
     * del GridBagConstraints asignado al Control ó Contenedor Representado por el Componente.
     */
    eFieldsInitializationGridBagConstraintsCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Simple
     * de los Eventos asignados al Control ó Contenedor Representado por el Componente.
     */
    eFieldsDefinitionEventsSimple,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Canonical
     * de los Eventos asignados al Control ó Contenedor Representado por el Componente.
     */
    eFieldsDefinitionEventsCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Simple
     * de los Eventos asignados al Control ó Contenedor Representado por el Componente
     * que contiene el Modelo Asociado.
     */
    eFieldsDefinitionEventsAsociateModelAbstractListSimple,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Canonical
     * de los Eventos asignados al Control ó Contenedor Representado por el Componente
     * que contiene el Modelo Asociado.
     */
    eFieldsDefinitionEventsAsociateModelAbstractListCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Simple
     * de las funciones de los Eventos asignados al Control ó Contenedor Representado por el Componente.
     */
    eFieldsDefinitionEventsFunctionSimple,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Canonical
     * de las funciones de los Eventos asignados al Control ó Contenedor Representado por el Componente.
     */
    eFieldsDefinitionEventsFunctionCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Simple
     * de las funciones de los Eventos asignados al Control ó Contenedor Representado por el Componente
     * que contiene el Modelo Asociado.
     */
    eFieldsDefinitionEventsFunctionsAsociateModelAbstractListSimple,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Canonical
     * de las funciones de los Eventos asignados al Control ó Contenedor Representado por el Componente
     * que contiene el Modelo Asociado.
     */
    eFieldsDefinitionEventsFunctionsAsociateModelAbstractListCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización Simple
     * de las Propiedades de un Control que describe una Representación.
     * Por lo general esta orden se utiliza cuando el Control 
     * esta incluido en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    ePropertiesInitializationSimple,
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización Canonical
     * de las Propiedades de un Control que describe una Representación. 
     * Por lo general esta orden se utiliza cuando el Control 
     * esta incluido en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    ePropertiesInitializationCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización Simple
     * de las Reglas de Distribución de un Control que describe una Representación.
     * Por lo general esta orden se utiliza cuando el Control 
     * esta incluido en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    eGridBagContrainstInitializationSimple,
    /**
     * Define el Proceso de Generación del Código Fuente de la Inicialización Canonical
     * de las Reglas de Distribución de un Control que describe una Representación. 
     * Por lo general esta orden se utiliza cuando el Control 
     * esta incluido en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    eGridBagContrainstInitializationCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Simple
     * de un Evento de un Control que describe una Representación.
     * Por lo general esta orden se utiliza cuando el Control 
     * esta incluido en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    eEventDefinitionSimple,
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición Canonical
     * de un Evento de un Control que describe una Representación.
     * Por lo general esta orden se utiliza cuando el Control 
     * esta incluido en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    eEventDefinitionCanonical,    
    /**
     * Define el Proceso de Generación del Código Fuente de la Importación del
     * Control que soportará un Contenedor que administrará una Colección
     * de Objetos del Modelo Analiazado. Por lo general esta orden se
     * utiliza con los Modelos Asociados, es decir aquella situaciones donde
     * se utilizan colecciones de objetos en una representación.
     * Por lo general esta orden se utiliza cuando el Control esta incluido 
     * en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    eImportAsociateModel,
    /**
     * Define el Proceso de Generación del Código Fuente de la Importación de un
     * Control que describe una Colección de Valores Estaticos por general
     * Cadenas de Texto  utilizadas como Complementos en una interfaz Gráfica.
     * Este es un caso especial ya que la representación
     * no es generada por un tipo de dato del modelo Analizado si no por
     * requerimiento del usuario. Ejemplo: Listas de Opciones, Combos o Menus.
     * Por lo general esta orden se utiliza cuando el Control esta incluido 
     * en un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    eImportStaticModel,
    /**
     * Define el Proceso de Generación del Código Fuente de la Definición de un
     * Contenedor. Por lo general esta orden se utiliza para definir
     * un Contenedor de alto nivel como un JPanel, JDialog ó JFrame.
     */
    eAsociateModelDefinitionSimple,
    /**
     * Define el Proceso de Generación del Código Fuente de las Definicipnes de las
     * Propiedades aplicadas al Control ó Contenedor Representadado. 
     * Por lo general esta orden se utiliza para definir cualquier Control ó
     * Contenedor de alto nivel utilizado en una interfaz gráfica.
     */
    eMethodsDefinitionProperties,
    
    
    eCanonicalDefinitionAsociateModel,
    eClassDefinition, 
    /**
     * 
     */
    eMethodDefinition, 
    /**
     * 
     */
    eMethodDefinitionAsociateModelSimple,
    /**
     * 
     */
    eMethodDefinitionAsociateModelCanonical,
    
    
    /**
     * 
     */
    eEventDefinition, 
    /**
     * 
     */
    eMethodEventDefinition, 
    /**
     * 
     */
    eLineCode,
    
    
    /**
     * Esta Fase se Encarga de la Definición de los Import que se definirán en
     * la generación de código del Contexto actual.
     */
    eFaseImport,
    
    /**
     * Esta Fase se Encarga de la Definición de los Atributos de instanccia de la
     * clase por lo generar son representados por los controles que se incluirán
     * en la representación gráfica.
     */
    eFaseFieldDefinitionInstance,
    
    /**
     * Esta Fase se Encarga de la Definición de los Atributos de Clase
     * clase por lo generar son representados por variable que acompañarán la lógica
     * de la interacción del usuario en la representación gráfica.
     */
    eFaseFieldDefinitionClass,
    
    /**
     * Esta Fase se Encarga de la Definición de los Atributos Constantes ó
     * estaticos de la
     * clase por lo generar son representados por los valores de control o banderas
     * que ayudarán al controlar la interacción del usuario en la representación gráfica.
     */
    eFaseFieldDefinitionConstant,
    
    /**
     * Esta Fase se Encarga de la Inicialización de los Atributos de instanccia de la
     * clase por lo generar son representados por los controles que se incluirán
     * en la representación gráfica.
     */
    eFaseFieldInitializationInstance,
    
    /**
     * Esta Fase se Encarga de la Inicialización de los Atributos de Clase
     * clase por lo generar son representados por variable que acompañarán la lógica
     * de la interacción del usuario en la representación gráfica.
     */
    eFaseFieldInitializationClass,
    
    /**
     * Esta Fase se Encarga de la Inicialización de las Propiedades de los Controles de la Clase.
     */
    eFaseFieldInitializationProperties,
    
    /**
     * Esta Fase se Encarga de la Inicialización de las GridBagConstraints de los Controles de la Clase.
     */
    eFaseFieldInitializationGridBagConstraints,
    
    /**
     * Esta Fase se Encarga de la Definiciones de los Eventos Asociados a los Controles de  la Clase.
     */
    eFaseMethodDefinitionEvent,
    
    /**
     * Esta Fase se Encarga de la Definiciones de las Funciones de los Eventos Asociados a los Controles de  la Clase.
     */
    eFaseMethodImplementEvent,
    
    /**
     * Esta Fase se Encarga de la Definiciones de las Funciones utilizadas en la Clase.
     */
    eFaseMethodImplementFunctionEvent,
    /**
     * Esta Fase se Encarga de la Definiciones de las Funciones Set de las Propiedades de Instancias de la Clase.
     */
    eFaseMethodImplementSetFunction,
    /**
     * Esta Fase se Encarga de la Definiciones de las Funciones Get de las Propiedades de Instancias de la Clase.
     */
    eFaseMethodImplementGetFunction,    
    /**
     * Esta Fase se Encarga de agregar el contenido al tab solo aplica para contenedores de distribuidores.
     */
    eFaseInitializationTab,
    /**
     * Esta Fase se Encarga de generar el código que ejecuta el boton aceptar del dialogo de modelo asociado.
     */
    eFaseDialogModelAsociateButtonOK,
    /**
     * Esta Fase se Encarga de generar el código que ejecuta el boton cancelar del dialogo de modelo asociado.
     */
    eFaseDialogModelAsociateButtonCancel,
    /**
     * Esta Fase se Encarga de generar el código para la barra de menu que soportará las acciones de un contenedor.
     */
    /**
     * Esta Fase se Encarga de la Definiciones de los Eventos Asociados a los Controles de  la Clase.
     */
    eFaseMethodDefinitionMenuEvent,
    /**
     * Esta Fase se Encarga de la Definiciones de los Eventos Asociados a los Controles de  la Clase.
     */
    eFaseMethodDefinitionMenuParentEvent,
    
    /**
     * Esta Fase se Encarga de la Definiciones de las Funciones de los Eventos Asociados a los Controles de  la Clase.
     */
    eFaseMethodImplementMenuEvent,
    
    /**
     * Esta Fase se Encarga de la Definiciones de las Funciones utilizadas en la Clase.
     */
    eFaseMethodImplementFunctionMenuEvent
    
    ;
    
}
